iT邦幫忙

2025 iThome 鐵人賽

DAY 8
0

昨天我們學會了計算投資報酬率(ROI),今天我們要更進一步——用 Python 直接畫出台積電(TSMC)過去一年的股價趨勢圖,幫助我們更直觀地觀察市場走勢。

這篇文章會帶你一步步完成兩張圖:

  1. 基本股價走勢圖(收盤價變化)
  2. 加入短期與中期移動平均線的走勢圖

一、準備工作
我們需要用到的 Python 套件:

pip install yfinance pandas matplotlib

二、繪製台積電股價走勢圖
下面這段程式碼會從 Yahoo Finance 抓取台積電(台灣上市,代碼 2330.TW)過去一年的資料,並繪製收盤價走勢圖。

import yfinance as yf
import pandas as pd
import matplotlib.pyplot as plt

# 設定字型避免中文亂碼(Mac、Windows 請依環境調整)
plt.rcParams['font.sans-serif'] = ['Microsoft JhengHei']  # Windows
plt.rcParams['axes.unicode_minus'] = False

# 下載台積電過去一年的股價資料
tsmc = yf.download("2330.TW", period="1y")

# 繪製第一張圖:收盤價走勢圖
plt.figure(figsize=(12, 6))
plt.plot(tsmc.index, tsmc['Close'], label="收盤價", color="blue")
plt.title("台積電股價走勢圖 (過去一年)", fontsize=16)
plt.xlabel("日期")
plt.ylabel("價格 (TWD)")
plt.legend()
plt.grid(True)
plt.show()

https://ithelp.ithome.com.tw/upload/images/20250813/20177983vuH5HUKRwC.png
這張圖能讓我們快速了解台積電在一年內的股價波動,例如:哪段時間下跌、哪段時間上漲。

三、加入移動平均線
移動平均線(Moving Average, MA)可以幫助我們觀察股價的趨勢方向。

  • 短期(20日)均線:對近期價格變化比較敏感
  • 中期(60日)均線:更平滑,適合觀察長期趨勢
# 計算 20 日與 60 日移動平均線
tsmc['MA20'] = tsmc['Close'].rolling(window=20).mean()
tsmc['MA60'] = tsmc['Close'].rolling(window=60).mean()

# 繪製第二張圖:收盤價 + 均線
plt.figure(figsize=(12, 6))
plt.plot(tsmc.index, tsmc['Close'], label="收盤價", color="blue")
plt.plot(tsmc.index, tsmc['MA20'], label="20日均線", color="orange")
plt.plot(tsmc.index, tsmc['MA60'], label="60日均線", color="green")
plt.title("台積電股價走勢與移動平均線", fontsize=16)
plt.xlabel("日期")
plt.ylabel("價格 (TWD)")
plt.legend()
plt.grid(True)
plt.show()

https://ithelp.ithome.com.tw/upload/images/20250813/20177983Zf2HTMS4bp.png
這張圖可以幫助我們:

  • 判斷多空趨勢(短期線上穿長期線 → 多頭;反之 → 空頭)
  • 避免噪音干擾(均線能平滑短期波動)

四、總結
今天我們學會了:

  1. 用 Python 取得台股資料(TWD 單位)
  2. 畫出收盤價走勢圖
  3. 加入短期與中期均線觀察趨勢

上一篇
用 Python 計算股票投資報酬率(ROI) — 模擬你的投資績效
下一篇
用 Python 比較台積電ADR(TSM)與輝達(NVDA)的股價走勢
系列文
30天用Python打造你的數位金融實力:從零開始的FinTech入門筆記28
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言